local BagLogic = require("bag.BagLogic")
local Msg = require("core.Msg")
local StoreLogic = require("store.StoreLogic")

--请求仓库列表
function CG_STORE_LIST(human)
	StoreLogic.sendStoreCap(human)
	StoreLogic.sendStoreList(human)
end

--整理仓库
function CG_STORE_SORT(human)
	StoreLogic.sortStore(human)
end

--丢弃仓库内道具

function CG_STORE_DISCARD(human,Msg)
	StoreLogic.discardStore(human, Msg.index)
end

--移动仓库内道具

function CG_STORE_SWAP(human,Msg)
	StoreLogic.swapStore(human, Msg.srcIndex, Msg.tarIndex)
end

--扩展仓库
function CG_STORE_ADD_CAP(human, Msg)
	StoreLogic.addStoreCap(human, Msg.add_cnt)
end

--仓库与背包内物品移动
function CG_STORE_SWAP_WITH_BAG_GRID(human, Msg)
	
	local posBag = Msg.posBag
	local posStore = Msg.posStore
	local isBag2Store = Msg.bag2store
	
	if not BagLogic.checkIndex(human, posBag) then
		return false
	end
	if not StoreLogic.checkStoreIndex(human, posStore) then
		return false
	end
	
	if not human.db.bag[posBag] and not human.db.store[posStore] then
		return false
	end
	
	-- 背包仓库物品移动
	StoreLogic.swapStoreBag(human, posBag, posStore, isBag2Store)
	
	BagLogic.sendBagItemChange(human, posBag)
	StoreLogic.sendStoreItemChange(human, posStore)
	
	return true
end

function CG_STORE_CAP_CONF_QUERY(human)
	local msgRet = Msg.gc.GC_STORE_CAP_CONF_QUERY
	msgRet.capConfs[0] = 0
	for index,conf in ipairs(BagConfig.storeCap) do
		msgRet.capConfs[0] = msgRet.capConfs[0] + 1
		local msgConf = msgRet.capConfs[msgRet.capConfs[0]]
		msgConf.line = conf.line
		msgConf.itemCnt = conf.itemCnt
	end
	Msg.send(msgRet,human.fd)
end




